package com.fin.zw.aiqas.util;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.fin.zw.aiqas.model.component.JsonDataModel;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

/**
 * @Description:
 * @Author: ZhangGQ
 * @Date: 2019/9/5 16:25
 */
public class ConverseUtils {
    private static  final Logger logger = LoggerFactory.getLogger(ConverseUtils.class);

    /**
     * 将语音翻译后的 json 串转 List<Converse>
     * @param file
     * @return
     */
    public static List<JsonDataModel> jsonToMap(File file){
        List<JsonDataModel> converses = new ArrayList<>();
        try {
//            String jsonString = IOUtils.toString(new InputStreamReader(new FileInputStream(file)));
            String mgs = FileUtil.readFile(file.getPath());
            JSONObject jsonObject = JSON.parseObject(mgs);
            if(jsonObject.containsKey("ok")){
                if((int)jsonObject.get("ok") == 0){
                    String dataStr = (String) jsonObject.get("data");
                    converses = JSON.parseArray(dataStr, JsonDataModel.class);
                    return converses;
                }else{
                    logger.info("文件" + file.getName() + " 中的 ok 不为 0 ");
                    return converses;
                }
            }else{
                logger.info("文件" + file.getName() + " 中没有 ok");
                return null;
            }
        } catch (Exception e) {
            e.printStackTrace();
            logger.info("解析文件 " + file.getName() + " 异常");
            return converses;
        }
    }

}
